import logging
def get_comment_id(comment):
    """
    统一获取评论ID，兼容ORM对象和字典格式。
    
    参数:
        comment (object or dict): 评论对象，可以是 RawComment ORM 实例或字典
        
    返回:
        int: 评论的ID。如果无法识别则返回0，并记录警告日志
    """
    if isinstance(comment, dict):
        # 如果是字典，优先尝试 'id' 键，再尝试其他命名风格
        comment_id = comment.get("id") or comment.get("comment_id")
        if not isinstance(comment_id, (int, str)) and comment_id is not None:
            try:
                comment_id = int(comment_id)
            except (ValueError, TypeError):
                comment_id = None

        if comment_id is None:
            logging.warning(f"⚠️ 从字典中无法提取有效ID: {comment}")
            return 0
        return int(comment_id)

    elif hasattr(comment, "id"):
        # 如果是ORM对象，直接返回 id 属性
        return comment.id

    else:
        logging.warning(f"⚠️ 无法识别评论ID，请检查数据结构: {vars(comment) if hasattr(comment, '__dict__') else str(comment)}")
        return 0